import request from "@/utils/request";
/**
 * 查询平台
 * search	string		否	搜索关键字
 * pageNo   int         是  页码，从 0 开始
 * pageSize int         是  每页数量
 * type string         否  设备类型，不传则返回所有类型设备，当前可取值为: IEQ,PMS
 * state string         否  每页数量设备状态，不传则返回所有状态设备，当前可取值为:
ONLINE, OFFLINE
 * @param data
 */
export function search(data) {
  return request({
    url: `/v2/platform/search.json`,
    method: "get",
    params: data
  });
}

/**
 * 创建平台
 * name	string		是	平台名称
 * displayName	string		是	平台别名
 * type	string		是	平台类型，当前可选 IEQ，PMS，OPT
 * description	string		否	平台描述
 * */
export function create(data) {
  return request({
    url: `v2/platform/create.json`,
    method: "post",
    data
  });
}

/**
 * 编辑平台
 * */
export function edit(data) {
  return request({
    url: `v2/platform/update.json`,
    method: "post",
    data
  });
}

/**
 * 获取单个平台详情
 * name/deviceId	string		是	设备名称/设备ID 二选一
 * */
export function get(data) {
  return request({
    url: `v2/platform/get.json`,
    method: "get",
    params: data
  });
}

/**
 * 平台设备列表
 * */
export function deviceList(data) {
  return request({
    url: `v2/platform/device/search.json`,
    method: "get",
    params: data
  });
}

/**
 * 平台添加设备
 * */
export function addDevice(data) {
  return request({
    url: `v2/platform/device/add.json`,
    method: "post",
    data
  });
}

/**
 * 平台删除设备
 * */
export function delDevice(data) {
  return request({
    url: `v2/platform/device/delete.json`,
    method: "post",
    data
  });
}
/**
 * 获取平台所有设备
 * @param {*平台ID} platformId 
 */
export function getAllDevice(platformId) {
  return request({
    url: `v2/platform/device/list.json?platformId=${platformId}`,
    method: "get"
  });
}
/**
 * 获取平台所有设备实时数据
 * @param {*平台ID} platformId 
 */
export function getAllDeviceData(platformId) {
  return request({
    url: `v2/platform/device/data/list.json?platformId=${platformId}`,
    method: "get"
  });
}
/**
 * 获取设备实时数据(带评价结果)
 * @param {*设备ID} deviceId 
 */
export function getAllDeviceDataRealtime(deviceId) {
  return request({
    url: `v2/platform/device/data/realtime.json?deviceId=${deviceId}`,
    method: "get"
  });
}
/**
 * 获取平台设备达标率
 * @param {*项目ID} platformId 
 */
export function getHealthRate(platformId) {
  return request({
    url: `v2/platform/device/health_rate.json?platformId=${platformId}`,
    method: "get"
  });
}
/**
 * 获取平台设备告警数量
 * @param {*项目ID} platformId 
 */
export function getAlertNum(platformId) {
  return request({
    url: `v2/platform/device/alert_num.json?platformId=${platformId}`,
    method: "get"
  });
}
/**
 * 获取近一周平台设备告警统计
 * @param {*项目ID} platformId 
 */
export function getStatisticWeek(platformId) {
  return request({
    url: `v2/platform/device/evaluate/statistic_by_data_type.json?platformId=${platformId}`,
    method: "get"
  });
}
/**
 * 获取平台设备在线状态统计
 * @param {*项目ID} platformId 
 */
export function getStatus(platformId) {
  return request({
    url: `v2/platform/device/status.json?platformId=${platformId}`,
    method: "get"
  });
}
/**
 * 获取区域评价
 * @param {*项目ID} platformId 
 */
export function getPlatformEvaluate(platformId) {
  return request({
    url: `v2/platform/domain/evaluate.json?platformId=${platformId}`,
    method: "get"
  });
}
/**
 * 获取单点评价
 * @param {*设备ID} deviceId 
 */
export function getDeviceEvaluate(deviceId) {
  return request({
    url: `v2/platform/point/evaluate.json?deviceId=${deviceId}`,
    method: "get"
  });
}
/**
 * 删除平台
 * @param data
 */
export function deletePlatform(data) {
  return request({
    url: `v2/platform/delete.json`,
    method: 'post',
    params: data
  })
}
/**
 * 查看平台的用户
 * @param deviceId
 * */
export function platformUser(platformId) {
  return request({
    url: `v2/platform/user/list.json?platformId=${platformId}`,
    method: "get"
  });
}
/**
 * 更新单个平台的用户
 * */
export function updateUser(data) {
  return request({
    url: `v2/platform/user/update.json`,
    method: "post",
    data,
  });
}
